﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using Inventario_HardSoft.Controlador;
using Inventario_HardSoft.ADO;

namespace Inventario_HardSoft.Presentacion
{
    public partial class Liberar_equipo : Form
    {
        private Ctrl_Reg_Usu control_RegUsu;
        private Ctrl_Reg_Equipo control_Asignado;
        public Liberar_equipo()
        {
            InitializeComponent();
            control_RegUsu = new Ctrl_Reg_Usu();
            control_Asignado = new Ctrl_Reg_Equipo();
        }
 

        private void btn_Buscar_Click(object sender, EventArgs e)
        {            
            //llenamos la grilla
            if (txt_Usuario.Text == "")
            {
                MessageBox.Show("No selecciono ningun usuario");
            }
            else
            {
                string nomb_usu = txt_Usuario.Text;
                grid_equip.Rows.Clear();
                control_RegUsu.get_MuestroEquipos_Cliente(grid_equip, nomb_usu);
                grid_equip.ClearSelection();
                if (grid_equip.Rows.Count == 0)
                {
                    MessageBox.Show("El usuario seleccionado no dispone de equipos asiganados");
                }
            }
        }
 
        private void btnAceptar_Click(object sender, EventArgs e)
        {
          
            if (grid_equip.SelectedRows.Count > 0)
            {
                if (MessageBox.Show("¿Confirma liberar el equipo seleccionado?", "Camilo", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1) == DialogResult.Yes)
                {
                    // lebera equipo de un usuario
                    String idEq = grid_equip.SelectedRows[0].Cells[0].Value.ToString();

                    control_Asignado.cambiaAsignado(idEq);
                    MessageBox.Show("Equipo liberado", "Camilo", MessageBoxButtons.OK, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1);
                    // actualizar 
                    grid_equip.Rows.Clear();
                    control_RegUsu.get_MuestroEquipos_Cliente(grid_equip, txt_Usuario.Text);
                }
                else
                {
                    grid_equip.Rows.Clear();
                    txt_Usuario.Text="";
                    btn_Examinar.Focus();
                }
            }
            else
            {
                MessageBox.Show("No ha seleccionado el equipo", "Camilo", MessageBoxButtons.OK, MessageBoxIcon.Error, MessageBoxDefaultButton.Button1);
            }
        }

        private void button1_Click(object sender, EventArgs e)
        {
            this.Close();
        }

        private void btnBaja_Click(object sender, EventArgs e)
        {
            if (MessageBox.Show("¿Confirma dar de baja al equipo seleccionado?", "Inventario HardSoft", MessageBoxButtons.YesNo, MessageBoxIcon.Information, MessageBoxDefaultButton.Button1) == DialogResult.Yes)
            {
                // lebera equipo de un usuario
                String idEq = grid_equip.SelectedRows[0].Cells[0].Value.ToString();
                control_Asignado.cambiaDadobaja(idEq);
                MessageBox.Show("Equipo dado de baja");
                // actualizar 
                grid_equip.Rows.Clear();
                control_RegUsu.get_MuestroEquipos_Cliente(grid_equip, txt_Usuario.Text);
            }
            else
            {
                grid_equip.Rows.Clear();
                txt_Usuario.Text = "";
            }
        }
 

        private void btn_Examinar_Click(object sender, EventArgs e)
        {
            txt_Usuario.Text = "";
            grid_equip.Rows.Clear();
            Buscar_Usuario bUsuario = new Buscar_Usuario();
            DialogResult dr = bUsuario.ShowDialog(this);
            switch (dr)
            {
                case DialogResult.OK:
                    txt_Usuario.Text = bUsuario.user.NOMBRE;
                    txt_Usuario.Tag = bUsuario.user.IDUSUARIO;
                    break;
                case DialogResult.Cancel:
                    txt_Usuario.Text = string.Empty;
                    break;
            }
            btn_Buscar.Focus();
        }
    }
}
